/* 防止图片闪一下 */
image {
	will-change: transform
}

/* scroll-view */
.scroll-row {
	width: 100%;
	white-space: nowrap;
}

.scroll-row-item {
	display: inline-block;
}

body {
	--primary: #007bff;
	--secondary: #6c757d;
	--success: #28a745;
	--danger: #dc3545;
	--warning: #ffc107;
	--info: #17a2b8;
	--light: #f8f9fa;
	--dark: #121212;
	--muted: #6c757d;
	--white: #fff;
	--borderColor: #f5f5f5;
	--lightmuted: #B2B2B2;
}

/* 阴影 */
.shadow-sm {
	box-shadow: 0 2rpx 4rpx rgba(114, 130, 138, 0.2);
}

.shadow {
	box-shadow: 0 8rpx 16rpx rgba(114, 130, 138, 0.2);
}

.shadow-lg {
	box-shadow: 0 16rpx 48rpx rgba(114, 130, 138, 0.2);
}

.shadow-main {
	box-shadow: 0 17rpx 43rpx 8rpx rgba(0, 0, 0, 0.02);
}

/* 定位 */
.position-absolute {
	position: absolute;
}

.position-fixed {
	position: fixed;
}

.position-relative {
	position: relative;
}

.position-sticky {
	position: sticky;
}

.left-0 {
	left: 0;
}

.left-half {
	left: 50%;
}

.top-0 {
	top: 0;
}

.top-half {
	top: 50%;
}

.bottom-0 {
	bottom: 0;
}

.bottom-half {
	bottom: 50%;
}

.right-0 {
	right: 0;
}

.right-half {
	right: 50%;
}

/* 宽高 */
.w-100 {
	width: 100%;
}

.w-50 {
	width: 50%;
}

.h-100 {
	height: 100%;
}

.h-50 {
	width: 50%;
}

/* 字体 */
.font {
	font-size: 26rpx;
}

.font-sm {
	font-size: 22rpx;
}

.font-md {
	font-size: 30rpx;
}

.font-lg {
	font-size: 40rpx;
}

.font-big {
	font-size: 60rpx;
}

.font-weight {
	font-weight: bold;
}

.font-weight-100 {
	font-weight: 100;
}

.line-h0 {
	line-height: 0;
}

.line-h {
	line-height: 1;
}

.line-h-sm {
	line-height: 1.2;
}

.line-h-md {
	line-height: 1.5;
}

.line-h-lg {
	line-height: 2;
}

.line-h-big {
	line-height: 3;
}

.line-through {
	text-decoration: line-through;
}

.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.row {
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

[class*='col-'],
[class*='span-'],
[class*='span24-'] {
	min-height: 1px;
	box-sizing: border-box;
}

/* 栅栏一 */
.col-1 {
	width: 62.5rpx;
}

.col-2 {
	width: 125rpx;
}

.col-3 {
	width: 187.5rpx;
}

.col-4 {
	width: 250rpx;
}

.col-5 {
	width: 312.5rpx;
}

.col-6 {
	width: 375rpx;
}

.col-7 {
	width: 437.5rpx;
}

.col-8 {
	width: 500rpx;
}

.col-9 {
	width: 562.5rpx;
}

.col-10 {
	width: 625rpx;
}

.col-11 {
	width: 687.5rpx;
}

.col-12 {
	width: 750rpx;
}

/* 栅栏二 */
.span-1 {
	width: 5%;
}

.span-2 {
	width: 10%;
}

.span-3 {
	width: 15%;
}

.span-4 {
	width: 20%;
}

.span-5 {
	width: 25%;
}

.span-6 {
	width: 30%;
}

.span-7 {
	width: 35%;
}

.span-8 {
	width: 40%;
}

.span-9 {
	width: 45%;
}

.span-10 {
	width: 50%;
}

.span-11 {
	width: 55%;
}

.span-12 {
	width: 60%;
}

.span-13 {
	width: 65%;
}

.span-14 {
	width: 70%;
}

.span-15 {
	width: 75%;
}

.span-16 {
	width: 80%;
}

.span-17 {
	width: 85%;
}

.span-18 {
	width: 90%;
}

.span-19 {
	width: 95%;
}

.span-20 {
	width: 100%;
}

/* 栅栏三 */
.span24-1 {
	width: 4.17%;
}

.span24-2 {
	width: 8.33%;
}

.span24-3 {
	width: 12.5%;
}

.span24-4 {
	width: 16.67%;
}

.span24-5 {
	width: 20.83%;
}

.span24-6 {
	width: 25%;
}

.span24-7 {
	width: 29.17%;
}

.span24-8 {
	width: 33.33%;
}

.span24-9 {
	width: 37.5%;
}

.span24-10 {
	width: 41.67%;
}

.span24-11 {
	width: 45.83%;
}

.span24-12 {
	width: 50%;
}

.span24-13 {
	width: 54.17%;
}

.span24-14 {
	width: 58.33%;
}

.span24-15 {
	width: 62.5%;
}

.span24-16 {
	width: 66.67%;
}

.span24-17 {
	width: 70.83%;
}

.span24-18 {
	width: 75%;
}

.span24-19 {
	width: 79.17%;
}

.span24-20 {
	width: 83.33%;
}

.span24-21 {
	width: 87.5%;
}

.span24-22 {
	width: 91.67%;
}

.span24-23 {
	width: 95.83%;
}

.span24-24 {
	width: 100%;
}


/* flex布局 */
.d-flex {
	display: flex;
}

.d-none {
	display: none;
}

.d-block {
	display: block;
}

.d-inline-block {
	display: inline-block;
}

.flex-1 {
	flex: 1;
}

.flex-column {
	flex-direction: column;
}

.flex-row {
	flex-direction: row;
}

.flex-wrap {
	flex-wrap: wrap;
}

.flex-nowrap {
	flex-wrap: nowrap;
}

.flex-shrink {
	flex-shrink: 0;
}

.j-start {
	justify-content: flex-start;
}

.j-center {
	justify-content: center;
}

.j-end {
	justify-content: flex-end;
}

.j-sb {
	justify-content: space-between;
}

.j-around {
	justify-content: space-around;
}

.a-center {
	align-items: center;
}

.a-start {
	align-items: flex-start;
}

.a-end {
	align-items: flex-end;
}

.a-base {
	align-items: baseline;
}

.a-stretch {
	align-items: stretch;
}

.a-self-start {
	align-self: flex-start;
}

.a-self-auto {
	align-self: auto;
}

.a-self-end {
	align-self: flex-end;
}

.a-self-stretch {
	align-self: stretch;
}

.a-self-baseline {
	align-self: baseline;
}

/* Border */
.border {
	border-width: 1rpx;
	border-style: solid;
	border-color: var(--borderColor);
}

.border-2 {
	border-width: 2rpx;
	border-style: solid;
	border-color: var(--borderColor);
}

.border-4 {
	border-width: 4rpx;
	border-style: solid;
	border-color: var(--borderColor);
}

.border-top {
	border-top-width: 1rpx;
	border-top-style: solid;
	border-top-color: var(--borderColor);
}

.border-right {
	border-right-width: 1rpx;
	border-right-style: solid;
	border-right-color: var(--borderColor);
}

.border-bottom {
	border-bottom-width: 1rpx;
	border-bottom-style: solid;
	border-bottom-color: var(--borderColor);
}

.border-left {
	border-left-width: 1rpx;
	border-left-style: solid;
	border-left-color: var(--borderColor);
}

.border-0 {
	border-width: 0;
}

.border-top-0 {
	border-top-width: 0;
}

.border-right-0 {
	border-right-width: 0;
}

.border-bottom-0 {
	border-bottom-width: 0;
}

.border-left-0 {
	border-left-width: 0;
}

.border-primary {
	border-color: var(--primary)
}

.border-secondary {
	border-color: var(--secondary)
}

.border-success {
	border-color: var(--success)
}

.border-danger {
	border-color: var(--danger)
}

.border-warning {
	border-color: var(--warning)
}

.border-info {
	border-color: var(--info)
}

.border-light {
	border-color: var(--light)
}

.border-dark {
	border-color: var(--dark)
}

.border-white {
	border-color: var(--white)
}

.border-light-secondary {
	border-color: #F1F1F1;
}

.rounded {
	border-radius: 5rpx;
}

.rounded-1 {
	border-radius: 10rpx;
}

.rounded-circle {
	border-radius: 100%;
}

.rounded-0 {
	border-radius: 0;
}

/* color */
.text-primary {
	color: var(--primary);
}

.text-secondary {
	color: var(--secondary);
}

.text-success {
	color: var(--success);
}

.text-danger {
	color: var(--danger);
}

.text-warning {
	color: var(--warning);
}

.text-info {
	color: var(--info);
}

.text-light {
	color: var(--light);
}

.text-dark {
	color: var(--dark);
}

.text-muted {
	color: var(--muted);
}

.text-light-muted {
	color: var(--lightmuted);
}

.text-white {
	color: var(--white);
}

.text-break {
	word-break: break-all;
}

/* 文字换行溢出处理 */
.text-ellipsis1 {
	/* #ifndef APP-PLUS-NVUE */
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: initial;
	/* #endif */
	/* #ifdef APP-PLUS-NVUE */
	lines: 1;
	/* #endif */
	/* 显示多行 */
	display: -webkit-box;
	/* 5为显示的行数 */
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}

.text-ellipsis2 {
	/* #ifndef APP-PLUS-NVUE */
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: initial;
	/* #endif */
	/* #ifdef APP-PLUS-NVUE */
	lines: 2;
	/* #endif */
	/* 显示多行 */
	display: -webkit-box;
	/* 5为显示的行数 */
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.text-ellipsis3 {
	/* #ifndef APP-PLUS-NVUE */
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: initial;
	/* #endif */
	/* #ifdef APP-PLUS-NVUE */
	lines: 3;
	/* #endif */
	/* 显示多行 */
	display: -webkit-box;
	/* 5为显示的行数 */
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

.bg-primary {
	background-color: var(--primary);
}

.bg-secondary {
	background-color: var(--secondary);
}

.bg-success {
	background-color: var(--success);
}

.bg-danger {
	background-color: var(--danger);
}

.bg-warning {
	background-color: var(--warning);
}

.bg-info {
	background-color: var(--info);
}

.bg-light {
	background-color: var(--light);
}

.bg-dark {
	background-color: var(--dark);
}

.bg-white {
	background-color: var(--white);
}

.bg-light-secondary {
	background-color: #F1F1F1;
}

/* Spacing */
.m-0 {
	margin-left: 0;
	margin-right: 0;
	margin-top: 0;
	margin-bottom: 0;
}

.m {
	margin-left: 5rpx;
	margin-right: 5rpx;
	margin-top: 5rpx;
	margin-bottom: 5rpx;
}

.m-1 {
	margin-left: 10rpx;
	margin-right: 10rpx;
	margin-top: 10rpx;
	margin-bottom: 10rpx;
}

.m-2 {
	margin-left: 20rpx;
	margin-right: 20rpx;
	margin-top: 20rpx;
	margin-bottom: 20rpx;
}

.m-3 {
	margin-left: 30rpx;
	margin-right: 30rpx;
	margin-top: 30rpx;
	margin-bottom: 30rpx;
}

.m-4 {
	margin-left: 40rpx;
	margin-right: 40rpx;
	margin-top: 40rpx;
	margin-bottom: 40rpx;
}

.m-5 {
	margin-left: 50rpx;
	margin-right: 50rpx;
	margin-top: 50rpx;
	margin-bottom: 50rpx;
}

.mx-0 {
	margin-left: 0;
	margin-right: 0;
}

.mx {
	margin-left: 5rpx;
	margin-right: 5rpx;
}

.mx-1 {
	margin-left: 10rpx;
	margin-right: 10rpx;
}

.mx-2 {
	margin-left: 20rpx;
	margin-right: 20rpx;
}

.mx-3 {
	margin-left: 30rpx;
	margin-right: 30rpx;
}

.mx-4 {
	margin-left: 40rpx;
	margin-right: 40rpx;
}

.mx-5 {
	margin-left: 50rpx;
	margin-right: 50rpx;
}

.my-0 {
	margin-top: 0;
	margin-bottom: 0;
}

.my {
	margin-top: 5rpx;
	margin-bottom: 5rpx;
}

.my-1 {
	margin-top: 10rpx;
	margin-bottom: 10rpx;
}

.my-2 {
	margin-top: 20rpx;
	margin-bottom: 20rpx;
}

.my-3 {
	margin-top: 30rpx;
	margin-bottom: 30rpx;
}

.my-4 {
	margin-top: 40rpx;
	margin-bottom: 40rpx;
}

.my-5 {
	margin-top: 50rpx;
	margin-bottom: 50rpx;
}

.mt-0 {
	margin-top: 0;
}

.mt {
	margin-top: 5rpx;
}

.mt-auto {
	margin-top: auto;
}

.mt-1 {
	margin-top: 10rpx;
}

.mt-2 {
	margin-top: 20rpx;
}

.mt-3 {
	margin-top: 30rpx;
}

.mt-4 {
	margin-top: 40rpx;
}

.mt-5 {
	margin-top: 50rpx;
}

.mt-10 {
	margin-top: 100rpx;
}

.mt-12 {
	margin-top: 120rpx;
}

.mb-0 {
	margin-bottom: 0;
}

.mb {
	margin-bottom: 5rpx;
}

.mb-auto {
	margin-bottom: auto;
}

.mb-1 {
	margin-bottom: 10rpx;
}

.mb-2 {
	margin-bottom: 20rpx;
}

.mb-3 {
	margin-bottom: 30rpx;
}

.mb-4 {
	margin-bottom: 40rpx;
}

.mb-5 {
	margin-bottom: 50rpx;
}

.ml-0 {
	margin-left: 0;
}

.ml {
	margin-left: 5rpx;
}

.ml-auto {
	margin-left: auto;
}

.ml-1 {
	margin-left: 10rpx;
}

.ml-2 {
	margin-left: 20rpx;
}

.ml-3 {
	margin-left: 30rpx;
}

.ml-4 {
	margin-left: 40rpx;
}

.ml-5 {
	margin-left: 50rpx;
}

.mr-0 {
	margin-right: 0;
}

.mr {
	margin-right: 5rpx;
}

.mr-1 {
	margin-right: 10rpx;
}

.mr-2 {
	margin-right: 20rpx;
}

.mr-3 {
	margin-right: 30rpx;
}

.mr-4 {
	margin-right: 40rpx;
}

.mr-5 {
	margin-right: 50rpx;
}

.p-0 {
	padding-left: 0;
	padding-right: 0;
	padding-top: 0;
	padding-bottom: 0;
}

.p {
	padding-left: 5rpx;
	padding-right: 5rpx;
	padding-top: 5rpx;
	padding-bottom: 5rpx;
}

.p-1 {
	padding-left: 10rpx;
	padding-right: 10rpx;
	padding-top: 10rpx;
	padding-bottom: 10rpx;
}

.p-2 {
	padding-left: 20rpx;
	padding-right: 20rpx;
	padding-top: 20rpx;
	padding-bottom: 20rpx;
}

.p-3 {
	padding-left: 30rpx;
	padding-right: 30rpx;
	padding-top: 30rpx;
	padding-bottom: 30rpx;
}

.p-4 {
	padding-left: 40rpx;
	padding-right: 40rpx;
	padding-top: 40rpx;
	padding-bottom: 40rpx;
}

.p-5 {
	padding-left: 50rpx;
	padding-right: 50rpx;
	padding-top: 50rpx;
	padding-bottom: 50rpx;
}

.px-0 {
	padding-left: 0;
	padding-right: 0;
}

.px {
	padding-left: 5rpx;
	padding-right: 5rpx;
}

.px-1 {
	padding-left: 10rpx;
	padding-right: 10rpx;
}

.px-2 {
	padding-left: 20rpx;
	padding-right: 20rpx;
}

.px-3 {
	padding-left: 30rpx;
	padding-right: 30rpx;
}

.px-4 {
	padding-left: 40rpx;
	padding-right: 40rpx;
}

.px-5 {
	padding-left: 50rpx;
	padding-right: 50rpx;
}

.py-0 {
	padding-top: 0;
	padding-bottom: 0;
}

.py {
	padding-top: 5rpx;
	padding-bottom: 5rpx;
}

.py-1 {
	padding-top: 10rpx;
	padding-bottom: 10rpx;
}

.py-2 {
	padding-top: 20rpx;
	padding-bottom: 20rpx;
}

.py-3 {
	padding-top: 30rpx;
	padding-bottom: 30rpx;
}

.py-4 {
	padding-top: 40rpx;
	padding-bottom: 40rpx;
}

.py-5 {
	padding-top: 50rpx;
	padding-bottom: 50rpx;
}

.py-6 {
	padding-top: 60rpx;
	padding-bottom: 60rpx;
}

.py-7 {
	padding-top: 70rpx;
	padding-bottom: 70rpx;
}

.py-8 {
	padding-top: 80rpx;
	padding-bottom: 80rpx;
}

.py-9 {
	padding-top: 90rpx;
	padding-bottom: 90rpx;
}

.py-10 {
	padding-top: 100rpx;
	padding-bottom: 100rpx;
}

.pt-0 {
	padding-top: 0;
}

.pt {
	padding-top: 5rpx;
}

.pt-1 {
	padding-top: 10rpx;
}

.pt-2 {
	padding-top: 20rpx;
}

.pt-3 {
	padding-top: 30rpx;
}

.pt-4 {
	padding-top: 40rpx;
}

.pt-5 {
	padding-top: 50rpx;
}

.pt-6 {
	padding-top: 60rpx;
}

.pt-7 {
	padding-top: 70rpx;
}

.pt-8 {
	padding-top: 80rpx;
}

.pt-9 {
	padding-top: 90rpx;
}

.pt-10 {
	padding-top: 100rpx;
}

.pb-0 {
	padding-bottom: 0;
}

.pb {
	padding-bottom: 5rpx;
}

.pb-1 {
	padding-bottom: 10rpx;
}

.pb-2 {
	padding-bottom: 20rpx;
}

.pb-3 {
	padding-bottom: 30rpx;
}

.pb-4 {
	padding-bottom: 40rpx;
}

.pb-5 {
	padding-bottom: 50rpx;
}

.pb-6 {
	padding-bottom: 60rpx;
}

.pb-7 {
	padding-bottom: 70rpx;
}

.pb-8 {
	padding-bottom: 80rpx;
}

.pb-9 {
	padding-bottom: 90rpx;
}

.pb-10 {
	padding-bottom: 100rpx;
}

.pl-0 {
	padding-left: 0;
}

.pl {
	padding-left: 5rpx;
}

.pl-1 {
	padding-left: 10rpx;
}

.pl-2 {
	padding-left: 20rpx;
}

.pl-3 {
	padding-left: 30rpx;
}

.pl-4 {
	padding-left: 40rpx;
}

.pl-5 {
	padding-left: 50rpx;
}

.pl-6 {
	padding-left: 60rpx;
}

.pl-7 {
	padding-left: 70rpx;
}

.pl-8 {
	padding-left: 80rpx;
}

.pl-9 {
	padding-left: 90rpx;
}

.pl-10 {
	padding-left: 100rpx;
}

.pr-0 {
	padding-right: 0;
}

.pr {
	padding-right: 5rpx;
}

.pr-1 {
	padding-right: 10rpx;
}

.pr-2 {
	padding-right: 20rpx;
}

.pr-3 {
	padding-right: 30rpx;
}

.pr-4 {
	padding-right: 40rpx;
}

.pr-5 {
	padding-right: 50rpx;
}

.pr-6 {
	padding-right: 60rpx;
}

.pr-7 {
	padding-right: 70rpx;
}

.pr-8 {
	padding-right: 80rpx;
}

.pr-9 {
	padding-right: 90rpx;
}

.pr-10 {
	padding-right: 100rpx;
}

/* 层级 */
.index-1 {
	z-index: 10;
}

.index-2 {
	z-index: 20;
}

.index-3 {
	z-index: 30;
}

.index-4 {
	z-index: 40;
}

.index-5 {
	z-index: 50;
}

/* 变换 */
.tf-half {
	transform: translate(-50%, -50%);
}

.tf-half-y {
	transform: translateY(-50%);
}

.tf-2half-y {
	transform: translateY(-25%);
}

.tf-half-x {
	transform: translateX(-50%);
}

.tf-2half-x {
	transform: translateX(-25%);
}

.tf-half-xy {
	transform: translate(-50%, -50%);
}

.tf-2half-xy {
	transform: translate(-25%, -25%);
}

.tf-2x-half-xy {
	transform: translate(-25%, -50%);
}

.tf-2y-half-xy {
	transform: translate(-50%, -25%);
}

.tf-scale-9 {
	transform: scale(.9);
}

.tf-scale-8 {
	transform: scale(.8);
}

.tf-scale-7 {
	transform: scale(.7);
}

.tf-scale-6 {
	transform: scale(.6);
}

.tf-scale-5 {
	transform: scale(.5);
}

.tf-scale-4 {
	transform: scale(.4);
}

.tf-scale-3 {
	transform: scale(.3);
}

.tf-scale-2 {
	transform: scale(.2);
}

.tf-scale-1 {
	transform: scale(.1);
}

.tf-rotate-45 {
	transform: rotate(45deg);
}

.tf-rotate-90 {
	transform: rotate(90deg);
}

.tf-rotate-180 {
	transform: rotate(180deg);
}

.tf-rotate-360 {
	transform: rotate(360deg);
}

/* 过渡动效 */
.ts-all-l{
	transition: all 0.3s linear; 
}

.ts-all-e{
	transition: all 0.3s ease; 
}

.ts-all-ei{
	transition: all 0.3s ease-in; 
}

.ts-all-eo{
	transition: all 0.3s ease-out; 
}

.ts-all-eio{
	transition: all 0.3s ease-in-out; 
}

/* 图片 */
video, image {
	display: block;
}

/* 透明滚动条 */
::-webkit-scrollbar {
	width: 0;
	height: 0;
	color: transparent;
}

button::after {
	border: none;
}

button {
	background-color: transparent;
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
	line-height: inherit;
	border-radius: 0;
	font-size: inherit;
}

.hidden {
	overflow: hidden !important;
}

.normal{
	white-space: normal;
}

.initial{
	white-space: initial;
}

/* 文字竖排显示 */
.text-column{
	writing-mode: vertical-rl;
	text-orientation: upright;
	letter-spacing: 6rpx;
}

/* 首行缩进 */
.text-i1 {
	text-indent: 1em;
}

.text-i2 {
	text-indent: 2em;
}

/* 文字间隔 */
.letter-1{
	letter-spacing: 1rpx;
}

.letter-2{
	letter-spacing: 2rpx;
}
/* 页面置灰 */

.filter-gc{
	filter: grayscale(100%);
}

/* 按字母换行 */
.auto-feed-letter{
	word-wrap:break-word;
	word-break:break-all;
}

/* 按词组换行 */
.auto-feed-word{
	word-wrap:break-word; 
	word-break:keep-all;
}